モジュール詳細:方向感覚

「下」が「左」にある場合、「上」を送信したい場合は「右」を押さなければならない。

このモジュールでは、4つのボタンのシークエンスを入力する必要がある。間違ったボタンを押すとミスが記録され、入力がリセットされる。

ボタンは上/右/下/左にあるとみなされる。しかしそれらの方向はシークエンス内で一貫しておらず、正しくボタンを押した際に、以前は上とみなされていたボタンが下になる場合がある。表1では、押すべきボタンごとに、1つの方向を示す情報を獲得できる。これらは後に、正しいボタンの位置を特定するのに活用する。

表1では、条件が適用されるまで各段を左から右に読む。

「上のボタン」とは常に、モジュールの一番上にあるボタンのことを指している。「上を指している」とは、モジュール内の上のボタンを向いていることを意味する。

表1

緑色のLEDは…の位置を示している
ボタン「U」が左にある 矢印が右を指している 矢印とLEDの方向が異なる いずれにも該当しない
矢印の方向は…の位置を示している
矢印がLEDに対して反対を指している LEDがボタン「R」を指している LEDが右を指していない いずれにも該当しない
上のボタンは…の位置を示している
LEDが下を指している 矢印がボタン「R」または「L」を指していない ボタン「U」は上にない いずれにも該当しない
ボタン「U」は…の位置を示している
矢印がボタン「U」を指している LEDがボタン「D」または「U」を指していない 矢印が下を指していない いずれにも該当しない

この次のリストにおいて、表1から取得した方向が類似しているかどうかを確認する。それが正しいボタンがある方向を取得する方法となる。

送信する際の注意事項:ボタンは、そのボタンに関連する方向に対して相対的に位置する。

1つ目のボタン:LEDの方向
  • 矢印がLEDと同じ方向を示している場合、を使用する。
  • それ以外の場合、上のボタンがLEDと同じ方向を示している場合、を使用する。
  • それ以外の場合、ボタン「U」がLEDと同じ方向を示している場合、を使用する。
  • それ以外の場合、LEDの方向が他と異なる場合、を使用する。
2つ目のボタン:矢印の方向
  • 上のボタンが矢印と同じ方向を示している場合、を使用する。
  • それ以外の場合、ボタン「U」が矢印と同じ方向を示している場合、を使用する。
  • それ以外の場合、LEDが矢印と同じ方向を示している場合、を使用する。
  • それ以外の場合、矢印の方向が他と異なる場合、を使用する。
3つ目のボタン:上のボタンの方向
  • ボタン「U」が上のボタンと同じ方向を示している場合、を使用する。
  • それ以外の場合、LEDが上のボタンと同じ方向を示している場合、を使用する。
  • それ以外の場合、矢印が上のボタンと同じ方向を示している場合、を使用する。
  • それ以外の場合、上のボタンの方向が他と異なる場合、を使用する。
4つ目のボタン:ボタン「U」の方向
  • LEDがボタン「U」と同じ方向を示している場合、を使用する。
  • それ以外の場合、矢印がボタン「U」と同じ方向を示している場合、を使用する。
  • それ以外の場合、上のボタンがボタン「U」と同じ方向を示している場合、を使用する。
  • それ以外の場合、ボタン「U」が他と異なる場合、を使用する。

LED関連のボタンの例:

  • LEDは上にあり、それが左の位置を示しているとする。
  • 正しい方向が「上」の場合、右にあるボタンを押す。